#ifndef  __COMBAT_DATA_HH___M_
#define  __COMBAT_DATA_HH___M_


#include "Combat/CombatSysImp.h"
#include "Entity/EvtEntity.h"


//
//	ICombatSys for Monster
//
class TCOM_API  CombatSysM : public CombatSysImp
{
public:
	CombatSysM();


	virtual	void	updateMP(int nAffectValue);
	virtual	void    updateMPBottleValue(int nAffectValue) ;

	//
	//	Fire just after the gene is created, just override this function to have
	//	you specific gene initialize logic.
	//
	virtual bool onInit(IGeneCreateData& createData);

	//
	//	Calculator or Demonstrator
	virtual	bool isCalculator()const;

	//
	//	Spell to cast
	virtual bool TryCastNewSpell();

protected:
	//
	//	onEvent event handlers
	//
	virtual void onEvent_CastPrep(IEvt& evt);
#ifdef _DEBUG
	//
	//	Debug Helper Function
	virtual	const char*		getCombatTag()const;
#endif
protected:



protected:
	enum
	{
		cnt_SpecialSkillM = 4,
	};
	CombatSkill*							m_wpTheMainSkill;
	CombatSkill*							m_wpSkill[cnt_SpecialSkillM];
	short									m_nSkillCnt;
};

#endif
